package villa.tools.mq.preferences;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Properties;

import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class Propiedades {

	private static Propiedades instancia = null;
	private static Properties prop= null;
	
	private Propiedades() {
		prop = new Properties();
	}

	public static Propiedades getInstancia(){
		if (instancia==null){
				instancia = new Propiedades();
		}
		return instancia;
	}
	
	public void PropiedadesUsers() {

        String ruta = "mqtool.properties";
        FileInputStream in = null;
        try {
                in = new FileInputStream(ruta);
                prop.load(in);     // Cargo propiedades desde InputStream
         }
            catch (IOException e) {
            	
        }
    }
	
	public void setPropiedad(String nombre, String valor)
	{
		prop.setProperty(nombre,valor); 
	}
	
	public void cleanProperties()
	{
		prop.clear();
	}
	
	public void savePropiedad()
	{
		String ruta = "mqtool.properties";
        FileOutputStream out = null;
        try {
                out = new FileOutputStream(ruta);
                prop.store(out, "PROPERTIES");
         }
            catch (IOException e) {
            	Shell shell = Display.getDefault().getActiveShell();
                String msg = "Save Properties Error: " + e.getMessage();
                String title = "MqTool";
                MessageDialog.openInformation(shell, title, msg);
        }
	}
	
	public String getPropiedad(String nombre){
		String valor = prop.getProperty(nombre);
		if (valor == null)
			return "";
		return valor;
	}
	
}
